﻿using Tetris.Game.Common.TetrisCenter.TetrisBase;
using Tetris.Game.ControlsBase;
using Tetris.Game.ControlsBase.Common;

namespace Tetris.Game.Common.Algorithm
{
    public interface IAlgorithm
    {
        ChooseBestMoveResult ChooseBestMove(BlockShapeBase piece, BlockControl[,] grid);
        Func<ShapeType, bool, BlockShapeBase?>? CreationBlockShapeCallback { get; set; }
    }
}
